Content distribution system for generating content streams to suit different users and facilitating e-commerce transactions using broadcast content metadata

ABSTRACT

A content distribution system is provided to facilitate e-commerce transactions for products and services associated with distributed content. A content stream comprising content blocks, reference content blocks and floating reference content blocks uses metadata to identify products and services associated with content blocks. The metadata and floating reference content blocks are used to substitute dynamically selected content for content blocks based on one or more of profiles of user(s), the broadcast station, the advertisement spot defined in the stream, content available for substitution, among other criteria. A market server can determine optimal matches to support content substitution, and perform brokerage and bidding functions among suppliers of products or services associated with content selected by users.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of the U.S. patent application Ser.No. 11/400,240, filed Apr. 10, 2006, which is a continuation of the U.S.patent application Ser. No. 09/493,087, filed Jan. 28, 2000, the entirecontents of which are incorporated herein by reference.

FIELD OF THE INVENTION

The invention relates to a system for transmitting streams of contentcomprising metadata to facilitate e-commerce transactions for productsor services associated with the content, substitution of dynamicallyselected content into a content stream, generation of data relating towhich content is being used by what users.

BACKGROUND OF THE INVENTION

The Internet and the World Wide Web have met an increasing demand formultimedia content and e-commerce transaction services. Consumers arebecoming more reliant on the Internet and the WWW to obtain informationon products and services and to order and pay for them. Using webbrowsers to locate such information, however, is often deferred untilafter a consumer makes an initial decision to locate and order a productor service on-line. For example, a consumer may be listening to abroadcast song and decide to purchase a compact disc or concert ticketsby the artist of the song. On-line shopping for these items typicallyoccurs at a later time when the consumer has an opportunity to use apersonal computer with on-line access and the time to search for theitem via a web browser.

A need exists for a system which provides information to a consumer forproducts and services related to distributed or broadcast content andfacilitates e-commerce transactions to order products or servicesassociated with content as it is being received. A need also exists fora user device with which to receive the content and informationindicating products or services relating to the received content, aswell as to request and place orders for these items.

A need also exists for personalization of content delivery to reduce theneed for consumers to browse on-line for content, and products andservices that are of interest to them. In addition, a need exists toprovide different entities responsible for making content and relatedproducts and services available to consumers with greater incentive todo so. These entities can include, for example, content providers,broadcast stations that employ programming to provide streams ofcontent, and broadband providers providing the network or othertransmission path for the content.

SUMMARY OF THE INVENTION

The above-described disadvantages are overcome and a number ofadvantages are realized with the system of the present invention inwhich content is formatted into a stream of content for transmission tousers. The content is formatted in content blocks that have metadataassociated therewith. Content can be audio programs, audio/videoprograms, text, financial data and graphics, among other types ofcontent. Metadata is preferably information that is associated with anentity (e.g., a user device, a broadcast station, and a contentprovider), a content block in the stream of content, or a transaction toselect, order and purchase content, a product or a service. Metadata canbe transmitted in-band (e.g., embedded in a content block) orout-of-band (i.e., transmitted via a path or channel other than thecontent path).

In accordance with another aspect of the present invention, a userdevice is configured to receive a stream of content and to provide auser interface. The metadata can be used to provide an indication viathe user interface of the types of products and services that areavailable and which relate to the content currently being received viathe user device.

In accordance with yet another aspect of the present invention, a userdevice can be connected to a distribution router from which to locateand access content made available by a number of content providers.

In accordance with still yet another aspect of the present invention,metadata can point to a content block or to a reference content block inthe stream of content. The reference content block comprises othermetadata. The distribution router is programmable to allow metadata in acontent block or in a reference content block to be overridden by themetadata that points to it.

In accordance with another aspect of the present invention, a method ofgenerating data streams with dynamically selected content for userscomprises: (1) generating a first content stream packetized into logicalcontent blocks of different types comprising content blocks, referencecontent blocks and floating reference content blocks, the content blockscomprising at least one of metadata and content, the reference contentblocks comprising a reference to another content block, and the floatingreference content block being initially empty and later resolved to acontent block or reference content block; (2) transmitting the firstcontent stream and metadata, the metadata describing the content and howthe content can be used, the metadata being transmitted via at least oneof in-band transmission by embedding in the first content stream andout-of-band transmission; (3) using the metadata to select content fortransmission to at least one user; and (4) dynamically replacing atleast one floating reference content block in the first content streamwith at least one of the selected content and a reference to contentblocks that correspond to the selected content.

In accordance with yet another aspect of the present invention, themethod further comprises performing Internet Protocol packetization ofthe first content stream for transport via the Internet.

In accordance with still yet another aspect of the present invention,the first content stream is used to generate different content streamshaving different content selected for different users using the metadataand specified via reference content blocks resolved from the floatingreference content blocks in the first content stream, the users havinguser devices that are operable to switch between respective thedifferent content streams using the resolved reference content blocks.

BRIEF DESCRIPTION OF THE DRAWINGS

The various aspects, advantages and novel features of the presentinvention will be more readily comprehended from the following detaileddescription when read in conjunction with the appended drawings, inwhich:

FIG. 1 has a block diagram of a content distribution system constructedin accordance with an embodiment of the present invention;

FIG. 2 is a user device interface for locating and requesting content inaccordance with an embodiment of the present invention;

FIG. 3 illustrates an exemplary stream of content configured inaccordance with an embodiment of the present invention;

FIG. 4 is a flowchart depicting a sequence of operations for completingan e-commerce transaction in accordance with an embodiment of thepresent invention; and

FIG. 5 is a flowchart depicting a sequence of operations forsubstituting content into a stream of content in accordance with anembodiment of the present invention.

Throughout the drawing figures, like reference numerals will beunderstood to refer to like parts and components.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

A content distribution system (CDS) 10 constructed in accordance withthe present invention is depicted in FIG. 1. The CDS 10 associatesproducts and services with broadcast content to allow users to conducte-commerce transactions when they are most likely to purchase. Theresulting, increased revenue stream provided by the CDS 10 can then beshared by content providers, broadcast providers, broadband providersand e-commerce providers, as described below.

Content can be, but is not limited to, audio, video, data, graphics,text and multimedia information. The content is preferably transmittedvia a distribution system which can be a communications networkincluding, but not limited to, direct network connections, server-basedenvironments, telephone networks, the Internet, intranets, local areanetworks (LAN), wide area networks (WAN), the WWW or other webs,transfers of content via storage devices, coaxial cable, powerdistribution lines (e.g., either residential or commercial power lines),fiber optics, among other paths (e.g., physical paths and wirelesspaths). For example, content can be sent via satellite or other wirelesspath, as well as wireline communications networks, or on the same pathas a unit of power provided by a utility company.

With continued reference to FIG. 1, the CDS 10 comprises a plurality ofuser devices 12. The user devices preferably locate, request and obtaincontent from a plurality of content providers referred to generally as14 (e.g., a broadcast station 14 a) via a distribution router 16. Acontent provider 14 can be an entity that places content and metadataassociated therewith onto a distribution network (e.g., via radio ortelevision stations or a cable television headend). A contentdistributor such as a broadband provider or cable company can thentransmit the content on the distribution network

The distribution router 16 preferably resides in the headend of abroadband provider. The distribution router 16 allows different streamsof content to be looked up and requested by users, and converts unicaststreams to multicast streams to reduce network traffic. The distributionrouter 16 can also store directories of locally-connected user devices12. A plurality of distribution routers 16 can be employed to managelarger numbers of users.

Broadcast stations 14 a assemble content into station programming andencode audio and/or video content for transmission (e.g., via theInternet). In addition to content, metadata is provided with thetransmitted content (e.g., embedded therein) which describes the contentand how it can be used. Content providers 14 can also be advertisementproviders 14 b, new services 14 n, pay content services, and so on,which provide their specific streams of content upon demand. As withbroadcast stations, these types of content providers 14 also provideassociated metadata with the content. By way of an example, thebroadcast station system can comprise a broadcast server with which toconvert a broadcast program signal into a format suitable fortransmission over the Internet. Accordingly, the broadcast serverprovides a continuous stream of content and metadata onto a network.

In the illustrated example, a user device 12 is provided with a tuner orother receiver device to receive content from the transmission path, toplayback the streamed content for the user, as well as to interact withthe content (e.g., allow the selection and purchase a product or serviceassociated with the content from one of a number of e-commerce providers18). The user device 12 is configured to primarily change receivedstreams based on incoming metadata. The user device 12 uses the metadataprovided with the content to switch between content streams and toenable initiation of transactions related to the content through thedistribution router 16. As stated previously, a distribution router 16preferably resides in a broadband provider's network and providescontent stream delivery services and multicast services to user devices12 that are preferably locally connected.

User devices can be employed in a user's residence or office, forexample, or implemented as a mobile unit. The user device 12 compriseshardware and software devices to allow a user to connect to streams madeavailable by the distribution router 16. The user device can beimplemented, for example, as a stereo equipment component having anoutput port to provide an audio output to a stereo receiver. The userdevice 12 can also be provided with loudspeakers and a display devicefor playback of the received content stream.

User devices 12 are provided with a user interface to facilitate contentinteraction (e.g., e-commerce transactions). An exemplary user interfaceis provided in FIG. 2. The user device 12 preferably comprises a displaydevice 24 and one or more user input devices such as a key pad 25,programmable buttons 26 and a dial 27 with which to select channels froma stream of content, control output volume, among other functions. Theuser device 12 can be programmed to provide a user with one or moreoptions for products or services associated with content being received,and to support e-commerce transactions to order and purchase selectedones of the associated products and services. For example, a button 28is programmable to initiate a request from the user device 12 to thedistribution router 16 to commence a bidding process for goods and/orservices associated with content that is being played back. A button 29can be depressed to interrupt the bidding process. The results of thebidding process (i.e., a list of suppliers and their respective quotes)is preferably displayed on the display device 24. The programmablebuttons 26, for example, can be programmed to allow a user to select asupplier from the list. The user can then depress a BUY button 30 tocomplete the e-commerce transaction and purchase the good or servicefrom the selected supplier. A smart card reader 32 can be provided inthe user device 12 to permit use of a debit or credit card whenpurchasing the selected good or service.

FIG. 3 depicts an exemplary stream of content which comprises blocks ofcontent in accordance with an aspect of the present invention. A streamis preferably a continuous series of content blocks 41 and referencecontent blocks 42 that are associated with a content provider 14 such asa radio station. In accordance with another aspect of the presentinvention, metadata 47 is provided with the stream of content. Themetadata can be transmitted in-band or out-of-band with respect to thecontent. Varying amounts of metadata 47 are associated with each entity(e.g., content owner, content provider, content distributor and user),content block and transaction. A content block can have content blockpermissions associated therewith, that is, metadata which defines whatcan be done with a content block. For example, a content block cancomprise a “copy restriction” flag indicating that the content cannot berecorded or retained by the user device 12. The flag can also indicatethat a content block is to be used in place of another content block.Some exemplary metadata types include, but are not limited to, theduration of the content block, its title, type of block, securityoptions, a description of the content, a description of associatedproducts, a description of the content owner, a description of userrights, and so on. A specialized metadata is associated with specificbusiness processes to enable bidding among different e-commerceproviders to supply the associated products and services, contentsubstitution based on user or user groups, e-commerce and otherprocesses.

With continued reference to FIG. 3, a stream of content can comprisereference content blocks (e.g., block 42 having a fixed reference toblock 43) and floating reference content blocks (e.g., block 44 which isresolved to a block 45 using a process described in connection with FIG.5), in addition to the blocks of content 41 and 46 with which metadata47 is associated to define duration, costs and other information. Areference content block (e.g., block 42) is an empty content blockpreferably having only metadata that refers to a second, differentcontent block or reference content block (e.g., block 43). The metadatain a reference content block can override some of the metadata in acontent block that is pointed to and is resolved by the distributionrouter 16. A floating reference content block (e.g., block 44) is areference content block that does not yet point to a content block orreference content block. The metadata in a floating reference contentblock is preferably resolved by a market server 20, as indicated inFIG. 1. The use of floating reference content blocks is described inmore detail below in connection with FIG. 5 relating to contentsubstitution based on user(s) preferences or profile(s).

With further reference to FIG. 1, the CDS 10 comprises a market server20 which preferably resides in backbone hubs located near largepopulation centers. An e-commerce gateway 22 connects the e-commerceproviders 18 to the market server 20 to allow e-commerce interactionincluding query and purchase transaction operations. The e-commerceproviders are forwarded transactions and queries about products andservices from the users via their interaction with the market server 20and the e-commerce gateway 22. Financial transactions in the CDS 10preferably occur on the market server 20 or on the e-commerce providersystems. The market server 20 collects system information and maintainsinformation about active streams. A number of market servers can beemployed to manage larger sizes of CDS systems 10.

The market server 20 is configured to provide content and transactionbrokerage functions, as well as to perform content and consumer matchingfunctions. The transaction dispatching, profile matching, and brokerageand bidding functions performed by the market server 20 enable differentbusiness models including e-commerce and content (e.g., advertisement)substitution, as well as facilitates data collection.

As will be described in more detail below, a number of aspects of theCDS 10 improve e-commerce capabilities of a content distribution system.The metadata architecture associated with content blocks and referencecontent blocks permits blocks of content to refer to different blockswith content depending on which user is requesting the content. The CDS10 provides seamless playback transition between different blocks ofcontent at respective user devices 12. The CDS system 10 providescommunication between the user devices 12 and the market server 20 toallow for information about consumer behavior to be collected,aggregated, stored and analyzed by the market server 20. Suchinformation allows the market server 20 to perform real-time spot marketfunctions whereby floating reference content blocks in streams providedby a content provider 14 to users can be substituted with differentcontent (e.g., advertisements), depending on the user. The market server20 can also perform brokerage and dispatching functions whereby severale-commerce providers are located in response to a user request forproducts and/or services associated with received content. The CDS 10provides an e-commerce exchange interface that allows back end systemsof multiple e-commerce providers to be interfaced. This is accomplishedby using an intermediate data representation format (e.g., XML) toprovide a mechanism by which the queries and results from an e-commerceprovider can be easily exchanged. Each e-commerce gateway 22 interfaceswith a different e-commerce provider, allowing the market server 20 tocommunicate with multiple e-commerce providers to facilitate brokerageand dispatching functions.

An exemplary e-commerce transaction will now be described with referenceto FIG. 4. A broadcast station provides information about the content itwill be transmitting and/or product identifiers into metadata associatedwith each content block (block 50). A user device 12 receives abroadcast stream from the broadcast station 14 which has associatedin-band or out-of-band metadata. The presence of the metadata results indifferent interface elements in the user device 12 being activated. Forexample, the user device 12 can be programmed to provide the user with a“buy” button or activate a smartcard reader (block 52). The user cantherefore activate the “buy” button to indicate an interest in theproducts and/or services associated with the received content (block54). In response to the user input device, the user device 12 initiatesa transaction through the distribution router 16 to the market server20, sending the metadata from the content block or reference contentblock being received when the “buy” button was depressed.

With continued reference to FIG. 4, the market server 20 initiates anumber of transactions with one or more e-commerce suppliers based onthe metadata related to the user device 12, broadcast station 14 a andcontent block to obtain quotes for products and/or services associatedwith the content or product identifiers. Queries generated by the marketserver 20 are preferably highly focused based on the available metadatato insure that returned results are accurately targeted to the metadatainitiating the transaction. The market server 20 aggregates responsesfrom the e-commerce providers that have or can obtain the associatedproducts and/or services, and then can package, format and sort quotesto be sent to the user device 12 via the distribution router 16 (block58). The user device 12 responds by displaying a list of products and/orservices and information about each item. Thus, the user is permitted tomake a purchasing decision based on price, delivery, brand name, trustor other factors displayed by the user device (block 60). The CDS 10 isadvantageous because a user can inquire about products and/or servicesrelating to content as it is being received with minimal effort becauseof the convenience of the user device interface and the operations ofthe distribution router 16 and market server 20.

After a user selects a product and/or server and supplier therefore, theuser device generates an interface to prompt the user for authorizationto conduct a transaction on behalf of the user and to obtain anyinformation required to complete the transaction to purchase theselected product from the selected supplier (block 62). For example, theuser can consent by entering a personal identification number on thekeypad of the user device 12, inserting a smartcard, or pressing abutton, among other methods. As indicated in block 64, a transaction issent to the market server 20 via the distribution router 16. The marketserver 20 passes the required information to conduct the transaction tothe e-commerce provider selected as the supplier (block 64). E-commerceprovider 18 processes the transaction and returns a result that is sentto the user device 12 via the market server 20 and the distributionrouter 16 (block 66). The user is then billed for the purchased productsand/or services (block 68).

With continued reference to FIG. 4, the CDS 10 allows an entity thatbills a user to transfer a percentage of the transaction to a secondentity which operates the distribution router 16 and/or the marketserver 20 (block 70). The second entity can, in turn, transfer apercentage of the amount received to the station 14 and/or the broadbandprovider (block 72). Web-based reporting and analysis for the broadcaststation 14 and the broadband provider is subsequently updated (block74).

The distribution router 16 collects information about users' activities,which is generally limited to information that is needed to service theusers' requests such as the information indicated in the followingtable:

TABLE EXAMPLE LOG SEGMENT Content Action IP Address Request Block DateTime Type # (Inferred) (Inferred) (Specified) (Specified) (Inferred)(Inferred) (Inferred) 1 Startup 193.21.56.29 ID>URL 198763544 99110112:42:05 1 UT 2 Request 193.21.56.29 ID>URL 129865124 991101 12:42:21 1UT 3 Connect 193.21.56.29 129865124 991101 12:42:23 1 UT 4 Request193.21.56.29 ID>URL 424918647 991101 12:42:26 1 UT 5 Connect193.21.56.29 424918647 991101 12:42:27 1 UT 6 Close 193.21.56.29424918647 991101 12:55:48 1 UT 7 Close 193.21.56.29 129865124 99110112:55:48 1 UT

The information in the table is similar to information collected by aserver when a user visits a web page. For example, when a user powers ona user device 12, the user device searches and finds a localdistribution router 16. If the user has a customized directory forexample, the user device 12 contacts the local distribution router 16and synchronizes a channel database. A start-up entry is generated, asindicated by line 1 in the table. The user can then select a channel toindicate that the channel should be enabled to the distribution router16.

A user device 12 sends a request to the distribution router 16 for acontent block associated with the channel, thereby generating anotherlog entry as indicated by line 2 of the table. The distribution router16 replies with a unicast stream address corresponding to the requestedcontent block. The user device 12 then opens a stream using theindicated address for the content block on the distribution router 16,causing generation of a third log entry as indicated in line 3 of thetable. The user device 12 receives a reference content block over theunicast stream corresponding to the channel. The user device 12 sends arequest to the distribution router 16 asking for the content blockassociated with the reference content block. A fourth log entry isgenerated, as indicated by line 4 of the table. The distribution router16 sends a reply with a unicast or multicast group corresponding to therequested content block. The user device opens a unicast stream to thecontent block to the distribution router, and a fifth log entry isgenerated as indicated by line 5 in the table. The tuner receives acontent block over a unicast or multicast stream corresponding to thecontent block pointed to by the reference content block. When the userpowers down the user device 12, the user device drops all open streams,causing generation of the log entries indicated on lines 6 and 7 of thetable.

The CDS 10 provides a number of advantages to broadcast stations andother content providers 14 by providing additional revenue streams fromgoods and services sold as a byproduct of content and programming. Inaddition, a broadcast station can expand into a product sales businessby enabling content and programming to be repackaged into saleable goodssuch as transcripts, recordings, and the like. The user deviceinterface, distribution router 16, and market server allow real-timeinformation collection and feedback such as voting and requests, as wellas fee-based content services such as audio/video jukebox services, orpay radio or pay television. Real-time data collection is provided basedon user behaviors. The effectiveness of advertising and promotions isincreased by allowing request-based distribution of products such asliterature and promotional packages.

The CDS 10 is also advantageous to e-commerce providers 18 by providingadditional customers and purchasing volume. The effectiveness ofadvertising and promotions is increased by enabling instant fulfillment.In accordance with one embodiment of the present invention, ane-commerce provider builds a direct relationship with the user andprovides a share of their revenue stream therefrom to the entityoperating the distribution router 16 and the market server 20.Alternatively, a broadband provider having a direct relationship withthe user can handle the e-commerce billing and channel portions of therevenue stream therefrom to the e-commerce providers and entityoperating the distribution router and market server. In eitherembodiment, the broadband provider is provided with an additional sourceof revenue resulting from a percentage of financial transactionsconducted over the network. In addition, the broadband provider canprovide users with an additional source of high quality reliablestreamed media and pay content services.

In accordance with an aspect of the present invention, broadcaststations in the CDS 10 can place blocks of content into a transmittedstream which can be dynamically replaced by other blocks of content. Themarket server 20 is configured to employ a matching algorithm to allowadvertisers to bid on spots in the stream in real-time on a group oruser-by-user basis. When the spots or replaceable content blocks,hereinafter referred to as floating reference content blocks, areincluded in the stream, a real-time spot market is made available amongadvertisers using metadata provided about a particular user device 12,an advertisement or other substitute content, an advertiser or othercontent provider, and the broadcast station. As stated previously, themarket server 20 collects and analyzes profiles of user or consumerbehavior to facilitate the selection and substitution of content foranother block of content or spot in the transmitted stream with othercontent selected based on one or more users.

With reference to FIG. 5, a flowchart is provided to illustrateprocesses involved in content substitution in accordance with thepresent invention. Each block is provided with a time indication whereinT corresponds to reception of a particular content block at a userdevice 12. The time period before the time T is indicated by thesubtraction of a number of seconds. Correspondingly, the time periodafter which a content block is received at a user device as indicated asT plus a number of seconds. It is to be understood that the secondsadded or subtracted from the time T are for illustrated purposes only,and that the actual processes involved in the content substitution cantake more or less time than indicated in FIG. 5.

With reference to block 80 in FIG. 5, a broadcast station 18 places afloating reference content block into a broadcast stream. Metadataembedded in the stream or sent out-of-band specifies the duration andother information defining how the spot in the stream will be placedwithin the market. When the metadata is received by the market server20, the market server 20 commences processing of the spot (block 82).The spot is hereinafter referred to as an advertisement spot forillustrative purposes. The market server 20 commences a bidding processto locate an optimal match between the profile of the broadcast station14, the advertisement spots, the user(s) and available substitutecontent (advertisement) (block 84). To perform the content substitutionprocess, the marker server 20 compares the metadata informationcontained in the floating reference content block, metadata about thebroadcast station, metadata about the user, and the stored metadataassociated with each possible content block (e.g., advertisement) thatcan be substituted. The metatdata about each possible content block isprovided to the market server 20 when the content blocks are registeredas on-demand content blocks. Using this metadata, a matching process canbe executed that compares the different parts of the metadata todetermine an optimal match from which the content block to besubstituted is determined. The search for an optimal match is completedfor each user, groups of users or for the entire stream, depending onguidelines specified in the metadata. When an optimal match or matchesare found, the floating reference content blocks are resolved intoblocks which are no longer floating and which contain references to thecontent blocks of the selected substitute content (e.g., advertisement)(block 86).

With continued reference to FIG. 5, when metadata in the selectedadvertisement or substitute content reaches the distribution router 16,the distribution router 16 looks up the reference content blockindicated therein and opens up the corresponding stream(s) associatedwith the selected advertisement(s) (block 88). When the metadataassociated with the selected advertisement reaches the user device 12,the user device looks up the floating reference content block thatresolves to the second reference content block. When the user devicelooks up the second reference device content block, a content block isreceived with the advertisement specifically targeted at the user device(block 90). The stream to the selected advertisement is then opened bythe user device (block 92). The user device then switches over to orcross-fades over to the advertisement stream and commences playing backthe ad (block 94).

The number of users of each advertisement stream is tabulated, and theaccounts of the corresponding substitute content or advertisingcompanies can be automatically deducted and transferred to the accountof the broadcast station, less an optional percentage retained by theoperator of the market server and/or distribution router (block 96).Web-based reporting and analysis for the broadcast station 14 and thesubstitution content providers (e.g., advertising companies) is updated(block 98).

The ability of the CDS 10 to perform content substitution isadvantageous to broadcast stations since returns on advertisement spotsin the streams are optimized by allowing each individual spot to be soldto the highest and/or most suitable bidder. The broadcast station hasdetailed control over the types of advertisements associated with theirbroadcast streams. The advertiser or advertising companies also realizea number of advantages. The advertising companies are able to purchasethose spots that are the most valuable to them. Further, advertisementscan be targeted towards specific users. The advertising or substitutecontent provider preferably only pays for the number of users thatactually played back the substitute content (e.g., advertisement). Thus,advertising companies can create individual advertising strategies foreach potential user.

Although the present invention has been described with reference to apreferred embodiment thereof, it will be understood that the inventionis not limited to the details thereof. Various modifications andsubstitutions have been suggested in the foregoing description, andothers will occur to those of ordinary skill in the art. All suchsubstitutions are intended to be embraced within the scope of theinvention as defined in the appended claims.

1. A method of generating data streams with dynamically selected contentfor users comprises: generating a first content stream packetized intological content blocks of different types comprising content blocks,reference content blocks and floating reference content blocks, saidcontent blocks comprising at least one of metadata and content, saidreference content blocks comprising a reference to another contentblock, and said floating reference content block being initially emptyand later resolved to a content block or reference content block;transmitting said first content stream and metadata, said metadatadescribing the content and how the content can be used, said metadatabeing transmitted via at least one of in-band transmission by embeddingin said first content stream and out-of-band transmission; using saidmetadata to select content for transmission to at least one user; anddynamically replacing at least one floating reference content block insaid first content stream with at least one of the selected content anda reference to content blocks that correspond to the selected content.2. A method as claimed in claim 1, further comprising the step ofperforming Internet Protocol packetization of said first content streamfor transport via the Internet.
 3. A method as claimed in claim 1,wherein said first content stream is used to generate different contentstreams having different content selected for different users using saidmetadata and specified via reference content blocks resolved from saidfloating reference content blocks in said first content stream, saidusers having user devices that are operable to switch between respectivesaid different content streams using the resolved reference contentblocks.
 4. A method as claimed in claim 1, wherein the user has a userdevice, and further comprising: receiving said first content stream viathe user device; receiving a reference content block in said firstcontent stream, said reference content block comprising a reference toat least one of a plurality of content blocks; requesting a contentblock associated with said reference; receiving a second stream addresscorresponding to said requested content block; and opening a secondcontent stream using said second stream address.
 5. A method as claimedin claim 4, further comprising the step of; receiving a floatingreference content block having no content in said first content stream;resolving said floating reference content block into at least one of aselected content block and a reference content block that refers to aselected content block; and substituting at least one of said selectedcontent block and said reference content block that refers to saidselected content block for said floating reference content block in saidfirst content stream.
 6. A method as claimed in claim 5, wherein saidselected content block is selected using said metadata and based on saiduser.
 7. A method as claimed in claim 1, wherein said content blocks areselected from the group consisting of text, graphics, and multimediainformation.
 8. A method as claimed in claim 1, wherein said metadatacomprises data specifying at least one of duration of a content block,number of bytes in a content block, title of content, type of block,security options, security options relating to at least one ofencryption, decryption and integrity of the content, a description ofthe content, format of the at least one of content in a content blockselected from the group consisting of audio, video, text, graphics, anddata, a description of associated products, a description of the contentowner, a description of user rights, and unique block identifiers.
 9. Amethod as claimed in claim 1, wherein said first content stream isunicast.
 10. A method as claimed in claim 1, wherein said first contentstream is broadcast.
 11. A method as claimed in claim 3, wherein acontent provider dynamically replaces said floating reference contentblock in the different content streams with references to the contentselected for the different users based on user characteristics.
 12. Amethod as claimed in claim 3, wherein each of the different users canopen multiple streams based on the resolved reference content blocks.